Barcodes are display codes designed to be read by machine and translated into a string of alphanumeric text or other usable data. They come in many forms, some of which are standardized by the International Standards Organization (e.g. code 39 and ISO 15420). Two-dimensional codes are also used, some of which are known as “R” codes.
For purposes of this disclosure, a barcode is defined as a code designed to be read by a computer or an electronic scanner, to the exclusion of a human, which has data stored therein. Such barcodes are typically scanned by optical scanners or “barcode readers” which function by shining an LED or laser light beam at a barcode and measuring the reflected response with a photoelectric cell.
Barcodes work great for identifying a product where low security is needed or there are other forms of security such as a human checking the result against, for example, a product they are looking at while ringing up an item for purchase. However, when higher security is needed, barcodes fail because they can very easily be reproduced. For example, if one has a coupon for 50% off an item, one can make thousands of copies and distribute this to others who can then take advantage of the copy. If the coupon or other data represented on a barcode is to only be used once, one must have a backend system of determining if the barcode has already been used. Where, for example, the barcode could be used at one of thousands of locations, this is often expensive or impractical.
Therefore, what is needed is a way to use a barcode or other coded system, the code being readable by current barcode reading technology (laser, LED, photograph or other optical scanners and sensors) which has higher security than known at the present time.